home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / telecomm / sticpsrc.lzh / SOURCE.ARC / CRTSPEC.S < prev    next >
Text File  |  1988-02-15  |  1KB  |  46 lines

  1. /
  2. / ST C run time startup.
  3. /
  4. / Special version for compilation of NET as a desktop accessory
  5. /    main called with argc == argv == envp == 0,
  6. /    getenv will not work,
  7. /    file handle 2 left pointing where ever it does.
  8. /
  9.     .prvd
  10.     .globl    errno_
  11.     .globl    environ_
  12.     .globl    _start_
  13. errno_:     .word 0
  14. environ_:    .long 0
  15. /
  16. /    a1 = end of bssd
  17. /    a5 = base page pointer
  18. /    _start_ = program text base
  19. /
  20.     .shri
  21. _start_:
  22. / Load the stack pointer with our stack
  23.     movea.l $__ESTACK__,a7
  24. / Push arguments for main(argc, argv, envp)
  25.     move.l    a5, -(a7)        / basepage
  26.     clr.l    -(a7)            / envp[]
  27.     clr.l    -(a7)            / argv[]
  28.     clr    -(a7)            / argc
  29. / Call main(argc, argv, envp)
  30.     suba    a6, a6            / Zero frame pointer
  31.     jsr    main_            / Call main line
  32.     adda    $14, a7         / Pop arguments
  33. / Exit with return from main
  34.     move    d0, -(a7)        / Push status
  35.     jsr    exit_            / Call extended exit()
  36.     clr    -(a7)            / Function 0
  37.     trap    $1            / Gemdos (Pterm0())
  38.  
  39.     .bssd
  40.     .even
  41. __USTACK__:
  42.     .blkw    1600            / this is the stack size
  43. __ESTACK__:
  44.     .blkl    1
  45.  
  46.